#include <stdio.h>

void f(int *pointer) {
    printf(" pointer = %p\n", pointer);
    printf("&pointer = %p\n", &pointer);
    printf("*pointer = %d\n\n", *pointer);
    *pointer = 100;
}

void f2(int v) {
    v = 200;
}

int main() {
    int a = 10;
    int *p = &a;
    printf(" a = %d\n", a);
    printf("*p = %d\n", *p);
    printf("&a = %p\n", &a);
    printf(" p = %p\n", p);
    printf("&p = %p\n\n", &p);    
    // f(p);
    f(&a);
    f2(a);
    printf("a = %d\n", a);
    return 0;
}